import {ITopic} from '../Topic';
import {题目类型} from "../题目类型";


export class topic单选题 {
	// 保护原生字符串
	topic: string;
	options:string;
	solution:string;
	//哈哈,好开心~我是分割注释~耶!
	
	constructor(topic:string, options:string, solution:string){
		this.topic = topic;
		this.options = options;
		this.solution = solution;
	}
	
	/**
	 * 牛逼版 topic
	 * number 应该取
	 * @return string 即是正常字符串 ,number 即是可填充字符串
	 */
	NBedition_topic(): (string | number)[]{
		
		return ["",0];
	}
	/**
	 * 牛逼版 options
	 *
	 * @return 看返回类型就很明显了
	 */
	NBedition_options():{[index : number]:string[]}{
		return {
			0:[""]
		};
	}
	
	/**
	 * ```
	 * 牛逼版 但并不牛逼的solution
	 * 大家都有牛逼版,solution说他也想要
	 * ```
	 */
	NBedition_solution():string{
		return this.solution;
	}
	
	/**
	 * ```
	 * 解析目标样式:
	 * ~~start~~[序号] //~~start~~123 //没有[]
	 * xxx __0__ xxx
	 * xxx __1__ xxx __2__ ...
	 * ~~options~~
	 * 0.xxx|||xxx|||xxx  // 0 即是 A
	 * 1.xxx|||xxx|||xxx
	 * ...
	 * ~~solution~~
	 * xxxxxx //事实上大部分解析,答案位置是根据语境放的,所以 额..,你懂的,分析不出来的
	 * ~~end~~
	 * ```
	 * @param s
	 */
	analizy(s: string): topic单选题 | null {
		return null;
	}
	
	/**
	 * ```
	 * 解析目标样式:
	 * 在 analizy 的基础上 加上分割符
	 * xxx
	 * ~~end~~
	 * ~~cut up~~  //分割
	 * ~~start~~[序号]
	 * xxx
	 * ```
	 * @param s
	 */
	analizys(s: string): topic单选题[] |null {
		return null;
	}
	
	
}